home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Merciful 1
/
Merciful - Disc 1.iso
/
software
/
m
/
multi_media_demo_maker
/
multimediademomakerv1.0.dms
/
multimediademomakerv1.0.adf
/
sources
/
equalizer1.S
next >
Wrap
Text File
|
1990-11-13
|
2KB
|
108 lines
;-----------------------------------------------------------------------
; Beispiel eines Vektorobjekt-Sourcecodes
;-----------------------------------------------------------------------
; Normales Linienobjekt (Quader)
;-----------------------------------------------------------------------
;(Seka-format)
;Benutzung:
;a (return)
;wi (return)
;name (return)
;start (return)
;end (return)
;Danach kann das Objekt vom Demomaker aus unter "name" eingeladen werden.
;------------------------------------------------------------------------
start:
dc.l "VECT" ;Kennung fuer Objekt!!!
filledob1:
dc.l polylist-filledob1 ;offset zu Punktstruktur
dc.l verbindung-filledob1 ;offset zu Verbindungsstruktur
dc.w 400 ;zoom = 400
dc.w 0,$fff,0,0,0,0,0,0 ;8 Farben (2.Farbe is Objektfarbe)
dc.b 0 ;kein sync
dc.b 2 ;2-Linienobjekt
dc.w 0 ;hier keine Funktion
dc.l 0 ;kein Init
dc.l equa-filledob1 ;Zusatroutine
;Equalizerroutine...
equa: move.l 16(a0),d0 ;Testen, ob Musik in Demo enthalten...
tst d0
bne musicda
rts
musicda:move.l d0,a0 ;Equalizertab nach a0
lea equ1(pc),a1
moveq #3-1,d1 ;4 Stimmen
loop2: cmp #20,(a1)
ble not2
sub #5,(a1)
sub #5,24(a1)
sub #5,6(a1)
sub #5,30(a1)
not2: tst (a0) ;auslesen
beq not1 ;kein Instrument
move.w #100,(a1) ;Ausschlag neu setzen
move.w #90,24(a1)
move.w #100,6(a1)
move.w #90,30(a1)
not1: addq.l #6,a0
lea [6*8](a1),a1 ;auf naechsten Eintrag
dbf d1,loop2
rts
polylist:
dc.w 8+8+8+8
dc.w -60,0,10
dc.w -80,0,10
dc.w -80
equ1:
dc.w 100,10
dc.w -60,100,10
dc.w -60,0,-10
dc.w -80,0,-10
dc.w -80,90,-10
dc.w -60,90,-10
dc.w -15,0,10
dc.w -35,0,10
dc.w -35,100,10
dc.w -15,100,10
dc.w -15,0,-10
dc.w -35,0,-10
dc.w -35,90,-10
dc.w -15,90,-10
dc.w 15,0,10
dc.w 35,0,10
dc.w 35,100,10
dc.w 15,100,10
dc.w 15,0,-10
dc.w 35,0,-10
dc.w 35,90,-10
dc.w 15,90,-10
dc.w 60,0,10
dc.w 80,0,10
dc.w 80,100,10
dc.w 60,100,10
dc.w 60,0,-10
dc.w 80,0,-10
dc.w 80,90,-10
dc.w 60,90,-10
verbindung:
dc.w 48
dc.w 0,1,1,2,2,3,3,0,4,5,5,6,6,7,7,4,0,4,3,7,1,5,2,6
dc.w 8,9,9,10,10,11,11,8,12,13,13,14,14,15,15,12,8,12
dc.w 11,15,9,13,10,14
dc.w 16,17,17,18,18,19,19,16,20,21,21,22
dc.w 22,23,23,20,16,20,19,23,17,21,18,22
dc.w 24,25,25,26,26,27,27,24,28,29,29,30
dc.w 30,31,31,28,24,28,25,29,26,30,27,31
end: